﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace serva
{
    [Serializable]
    public class Empresa
    {
        Dictionary<string, Componente> Inventario;

        [System.Runtime.CompilerServices.IndexerName("Objeto")]        
        public Componente this[string index]
        {
            get { return Inventario[index]; }
            set { Inventario[index] = value; }
        }

        private string nombre="Empresa";

        public string Nombre 
        {
            set { nombre = value; }
            get { return nombre; }
        }

        public List<Componente> Items
        {
            get { return Inventario.Values.ToList(); }
        }


        public List<Componente> invent;
        public List<Servicio>Servicios;

        /// <summary>
        /// costo del servicio
        /// </summary>
        private double costo=0;

        public double Costo 
        {
            set { costo = value; }
            get { return costo; }
        }

        private double utilidad=0;

        public double Utilidad
        {
            set { utilidad = value; }
            get { return utilidad; }
        }

        private DateTime fecha=DateTime.Today;

        public DateTime Fecha
        {
            set { fecha = value; }
            get { return fecha; }
        }

        public Empresa()
        {
            Servicios = new List<Servicio>();
            Inventario = new Dictionary<string, Componente>();
        }

        public double CalculoCosto() 
        {
            double costo = 0;
            for (int i = 0; i < Servicios.Count; i++)
            {
                costo += Servicios[i].Costo;
            }
            return costo;
        }

        public double CalculoCosto(double CostosFijos)
        {
            double costo = 0;
            for (int i = 0; i < Servicios.Count; i++)
            {
                costo += Servicios[i].Costo;
            }
            return costo + CostosFijos;
        }

        public double CalculoUtilidad(double precio)
        {
            return precio - Costo;
        }
    }
}
